package org.jeecg.modules.scripts.entity;

import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import org.jeecg.common.constant.ProvinceCityArea;
import org.jeecg.common.util.SpringContextUtils;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @Description: blog_scripts
 * @Author: jeecg-boot
 * @Date:   2025-06-30
 * @Version: V1.0
 */
@Data
@TableName("blog_scripts")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@Schema(description="blog_scripts")
public class BlogScripts implements Serializable {
    private static final long serialVersionUID = 1L;

	/**脚本ID*/
	@TableId(type = IdType.ASSIGN_ID)
    @Schema(description = "脚本ID")
    private java.lang.String id;
	/**脚本名称*/
	@Excel(name = "脚本名称", width = 15)
    @Schema(description = "脚本名称")
    private java.lang.String name;
	/**文件名*/
	@Excel(name = "文件名", width = 15)
    @Schema(description = "文件名")
    private java.lang.String fileName;
	/**文件大小(字节)*/
	@Excel(name = "文件大小(字节)", width = 15)
    @Schema(description = "文件大小(字节)")
    private java.lang.Integer fileSize;
	/**脚本描述*/
	@Excel(name = "脚本描述", width = 15)
    @Schema(description = "脚本描述")
    private java.lang.String description;
	/**脚本代码内容*/
	@Excel(name = "脚本代码内容", width = 15)
    @Schema(description = "脚本代码内容")
    private java.lang.String content;
	/**脚本图标*/
	@Excel(name = "脚本图标", width = 15)
    @Schema(description = "脚本图标")
    private java.lang.String icon;
	/**脚本颜色*/
	@Excel(name = "脚本颜色", width = 15)
    @Schema(description = "脚本颜色")
    private java.lang.String color;
	/**脚本状态*/
	@Excel(name = "脚本状态", width = 15)
    @Schema(description = "脚本状态")
    private java.lang.String status;
	/**支持系统(JSON数组)*/
	@Excel(name = "支持系统(JSON数组)", width = 15)
    @Schema(description = "支持系统(JSON数组)")
    private java.lang.String systems;
	/**功能特性(JSON数组)*/
	@Excel(name = "功能特性(JSON数组)", width = 15)
    @Schema(description = "功能特性(JSON数组)")
    private java.lang.String features;
	/**技术栈(JSON数组)*/
	@Excel(name = "技术栈(JSON数组)", width = 15)
    @Schema(description = "技术栈(JSON数组)")
    private java.lang.String techStack;
	/**下载次数*/
	@Excel(name = "下载次数", width = 15)
    @Schema(description = "下载次数")
    private java.lang.Integer downloadCount;
	/**查看次数*/
	@Excel(name = "查看次数", width = 15)
    @Schema(description = "查看次数")
    private java.lang.Integer viewCount;
	/**排序权重*/
	@Excel(name = "排序权重", width = 15)
    @Schema(description = "排序权重")
    private java.lang.Integer sortOrder;
	/**创建人*/
	@Excel(name = "创建人", width = 15)
    @Schema(description = "创建人")
    @Dict(dictTable = "sys_user", dicCode = "username", dicText = "realname")
    private java.lang.String createBy;
	/**创建时间*/
	@Excel(name = "创建时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @Schema(description = "创建时间")
    private java.util.Date createTime;
	/**更新人*/
	@Excel(name = "更新人", width = 15)
    @Schema(description = "更新人")
    private java.lang.String updateBy;
	/**更新时间*/
	@Excel(name = "更新时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @Schema(description = "更新时间")
    private java.util.Date updateTime;
	/**是否删除(0:否,1:是)*/
	@Excel(name = "是否删除(0:否,1:是)", width = 15)
    @Schema(description = "是否删除(0:否,1:是)")
    private java.lang.Integer delFlag;
}
